1. Field of Invention
This invention relates to error diffusion and threshold array halftoning of continuous tone data having multiple color separation layers.
2. Description of Related Art
Threshold array halftoning systems and methods and various different types of error diffusion halftoning systems and methods are commonly used to convert continuous tone grayscale, highlight color, and/or full color image data into binary image data suitable for printing and usable by image forming devices that use binary marking technologies. Such binary marking technologies include various types of xerographic laser printers and digital copiers, various types of ink jet printers and other fluid ejection systems, and the like.
In general, black and white, or pure grayscale images, comprise a single color separation layer that uses a single colorant, often black, to create an image. In highlight color, two or three colorants, one of which is usually black, are combined to generate a number of primary and secondary colors. However, highlight colors do not cover the full spectrum or gamut of colors that can be sensed by the human visual system. In contrast, full color systems include three or more different colorants that allow the full spectrum of perceptible colors to be represented.
In highlight color and full color continuous tone images, the various colorants can be divided into separate color separation layers. In each color separation layer, the image value for a particular pixel for a particular colorant is allowed to vary between a first, or “no color”, value, representing no colorant, and a maximum, or “full color”, value representing a maximum amount of colorant. For such continuous tone images, the image values between the full color value and the no value are allowed to vary effectively continuously, due to the large number of discrete values for the amount of colorant, where the difference between any two adjacent values is relatively small. For example, many continuous tone images define 256 levels of colorant between zero and 255. In general, zero represents no color, while 255 represents the full color, i.e., the maximum amount of colorant that can be applied to an image receiving medium for a given pixel of the image.
Traditionally, in simple error diffusion halftoning systems and methods, as well as in simple threshold array halftoning systems and methods, each color separation layer in a continuous tone highlight or full color image is halftoned independently of the other color separation layers. Such scalar error diffusion techniques are described in, for example, “An Adaptive Algorithm for Spatial Grayscale”, by R. Floyd et al., Proceedings of the Society of Information Display, Vol. 17, pp. 75–77 (1976), incorporated herein by reference in its entirety. Several advances have been made in improving the quality of halftones from scalar error diffusion techniques, including schemes that process the data in multiple passes. One example of such as system is described in, “On the Phase Response of the Error Diffusion Filter for Image Halftoning,” by A. Kumar et al., IEEE Transactions on Image Processing, Vol. 8, no. 9, pp. 1282–1292 (September, 1999).
However, applying such simple scalar error diffusion to each color separation layer independently of the other color separation layers often results in noisy or artifact-laden images. For example, a light blue region can be produced by combining magenta and cyan pixels of a cyan-yellow-magenta-black (CMYK) image. In this case, each of the colorants cyan, yellow, magenta and black are provided in different color separation layers. However, if the magenta and cyan color separation layers are processed independently, then some pixels in the resulting halftone full color image within the light blue region may have both the magenta and cyan pixels on in the corresponding color separation layers. This yields the color blue at these pixels in the full color image obtained when these color separation layers are superimposed. However, other pixels may have no color at all, resulting in white pixels. Other pixels may have only cyan or may have only magenta. This mixture of white pixels, blue pixels, magenta pixels and cyan pixels will have more contrast and will look noisier than pixels that are purely combinations of magenta and cyan.
Similarly, with threshold array halftoning techniques, each pixel in the original continuous tone image is divided into a plurality of higher resolution pixels in the halftone image. Each of these higher resolution pixels has a different threshold value associated with it. Depending on the original continuous tone image value for a given pixel in the input image, those higher resolution pixels in the output image that have threshold values less than that continuous tone image value will be turned on, while those pixels having threshold values higher than the input image value will not be turned on.
In this way, the amount of colorant between output pixels provided with a full amount of color and output pixels provided with no color is averaged to closely approximate the amount of color in the original continuous tone image. To provide for different color separation layers, each color separation layer is often provided with a different set of parameters for the threshold array halftone cell. These parameters can include frequency, size and/or angle. As a result, like the simple error diffusion systems and methods described above, for a light blue continuous tone input image pixel, the resulting higher resolution output pixels can be combinations of white, magenta only, cyan only, and magenta and cyan pixels, again resulting in unnecessary contrast and noise.
Conventionally, to reduce the effects of this lowered image quality, vector error diffusion systems and methods, such as those disclosed in Venable et al., “Selection and Use of Small Color Sets for Pictorial Display”, Proceedings of the IS&T Annual Meeting, Rochester (1990) and in Miller et al., “Color Halftoning Using Error Diffusion and a Human Visual System Model”, Proceedings of the IS&T Annual Meeting, Rochester (1990), each incorporated herein by reference in its entirety, have been used in place of scalar error diffusion. In vector error diffusion, as opposed to scalar error diffusion, each color in the input image data is treated as a point in a three-dimensional color space. That is, the color separation layers are not treated independently, but are completely interrelated when determining a single error-diffused three-dimensional halftone color value. However, such vector error diffusion requires extensive computational processing power and other resources to find the closest three-dimensional halftone color value for each input pixel. Additionally, such vector error diffusion is unstable for ideal colors that are near the boundary of an available color gamut that is provided by the intended image rendering device.
In an attempt to solve these difficulties in vector error diffusion, U.S. Pat. No. 6,072,591 and U.S. patent application Ser. No. 09/487,543, each incorporated herein by reference in its entirety, disclose systems that modify vector error diffusion techniques by minimizing errors using the sum and differences of the colors. In these methods, vector error diffusion is only carried out on three channels using a simple decision tree to select the output color at each pixel.
Similarly, in U.S. Pat. No. 6,157,462, incorporated herein by reference in its entirety, after a continuous tone black color separation layer is converted to a halftone black; color separation layer using error diffusion halftoning, the resulting halftone black color separation layer is subsequently combined with each of the other color separation layers of a highlight color or full color continuous tone image to generate modified continuous tone separation layers for the remaining colors. Each of these modified continuous tone separation layers is then converted to a halftone color separation layer using standard error diffusion techniques.